package media

import (
	"encoding/base64"

	"github.com/skip2/go-qrcode"
)

// QrCodeBase64 生成二维码的Base64编码PNG图像。
//
// 参数:
//   - content: 要编码为二维码的内容
//
// 返回值:
//   - string: Base64编码的PNG图像字符串
//
// 注意:
//   - 使用中等纠错级别(Medium)
//   - 图像大小为256x256像素
//   - 如果生成失败返回空字符串
func QrCodeBase64(content string) string {
	var q *qrcode.QRCode
	q, err := qrcode.New(content, qrcode.Medium)
	if err != nil {
		return ""
	}
	pngByte, errPng := q.PNG(256)
	if errPng == nil {
		return base64.StdEncoding.EncodeToString(pngByte)
	}
	return ""
}
